home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 45
/
Aminet 45 (2001)(GTI - Schatztruhe)[!][Oct 2001].iso
/
Aminet
/
dev
/
c
/
vbcc.lha
/
vbcc
/
vbcc.readme
< prev
Wrap
Text File
|
2001-06-27
|
6KB
|
178 lines
Short: optimizing ISO C compiler (68k/WarpOS/PowerUp/MorphOS)
Uploader: vb@compilers.de (Volker Barthelmann)
Author: vb@compilers.de (Volker Barthelmann),frank@phoenix.owl.de (Frank Wille)
Type: dev/c
Version: 0.8
Replaces: dev/c/vbcc_ppc.lha,dev/c/vbccm68k.lha,dev/c/vbccm68ksrc.lha,dev/c/vbccppc.lha,dev/c/vbccppcnative.lha,dev/c/vbccppcsrc.lha,dev/c/vbccsrc.lha,dev/c/vbccwos.lha,dev/c/vbccwosnative.lha,dev/c/vbccwossrc.lha
vbcc - portable ISO/ANSI C compiler (c) in 1995-2001 by Volker Barthelmann
INTRODUCTION
vbcc is a portable and retargetable ISO/ANSI C compiler.
This archive contains the compiler, preprocessor, assembler, linker,
frontend, message browser, startup codes, C-libraries, amiga.lib
replacements as well as several other tools to generate code for
AmigaOS/68k, WarpOS, PowerUp and MorphOS.
Many (but not all) tools in this distribution are provided as
binaries running on 68k as well as on different PPC systems.
All major parts of this distribution (including compiler,
preprocessor, libraries etc.) have been built using this system.
FEATURES
vbcc..
- is portable and retargetable
- comes with a global optimizer that can e.g. do common subexpression
elimination, constant propagation, function inlining and several
other optimizations across functions and modules (depending on
optimization level)
- should be compliant to ANSI/ISO89 and partially ISO99
- can generate code that runs on a plain 68000 CPU
- can generate code optimized for 020/030, 040 or 060
- can generate code that uses the 68881/2, 68040/060 FPUs directly
and comes with appropriate math-libraries
- can generate code that runs on PowerUp-boards or MorphOS systems
- generates standard Amiga-68k-objects, PPC-ELF-objects or
WarpOS-EHF-objects
- offers a lot of useful extensions like variable-attributes
and #pragmas
- comes with a message browser
- offers a lot of error/warning messages that can be turned on/off
separately
WHAT'S NEW
Some changes since the last Amiga release:
- bug fixes in the compiler, optimizer, tools and libraries
- improved code-generation
- improved optimizations, including inter-procedural,
cross-module optimizations and alias-analysis
- support for some c99 features, including
- long long
- flexible array members as last element of a struct
- mixed statements and declarations
- declarations within for-loops
- inline function-specifier
- restrict-qualifier
- vararg-macros
- _Pragma
- increased translation-limits
- stdint.h
- stack-checking and measurement of stack-usage
- documentation as pdf and html documents
- new attributes (e.g. __amigainterrupt, __section)
- new #pragmas for PPC (amiga-align etc.)
- inline-headers for WarpOS PPC-native libraries
- (backend-specific) predefined macros
- improved libaries and headers
- new versions of Frank Wille's assemblers and linkers
- use of a builtin preprocessor
- support for MorphOS
REQUIREMENTS
To use vbcc you need:
- an Amiga with OS 2.0 or higher
- enough RAM (it is possible to translate small programs with 1MB, but
for larger programs much more will be needed)
Stuff that is not needed, but may be very useful:
- harddisk
- editor
- make, touch etc.
- the Amiga OS-includes (they can be found on certain CDs)
- pipe-command (to use the message browser)
Also you should know how to use the shell and you should know ANSI C
(if you need a book I recommend (like everyone) "The C Programming
Language, Second Edition, ANSI C" by Kernighan and Ritchie).
LEGAL
Note that this distribution contains several programs, libraries etc.
that are from different authors and are under different legal status.
So always read the corresponding documentation to find out under
what conditions a certain file may be used, distributed etc.
For the most part you can assume that you may use everything for
non-commercial purposes and may distribute the unchanged archive
in whole.
Changing any parts from this archive, distributing parts of it or
using it commercially might be legal for certain parts, but illegal
for others, so read all docs carefully before doing any of the above.
DOCUMENTATION
Look for documentation in the doc-subdirectory. First, read
vbcc.pdf or vbcc.html to learn about the compiler and frontend.
For the other tools like assemblers and linkers, consider the
remaining documentation which can be found in this subdirectory.
BUGREPORTS/COMMENTS
If you think vbcc generates bad code, throws enforcer hits, crashes,
seems to be not ISO-compliant etc. and the problem is not mentioned
anywhere in this docs as known problem, please send a mail with your
system configuration, the vbcc version, the command line you used, the
source that caused the problem and a brief description of the problem
to
vb@compilers.de and/or
frank@phoenix.owl.de
Also if you find problems with the includes, the libraries or you have
suggestions, dislikes etc. send us a mail.
Corrections, improvements etc. of the manuals are appreciated, too.
Volker Barthelmann vb@compilers.de
Frank Wille frank@phoenix.owl.de